Automated call screening

ABSTRACT

A method for facilitating call completions utilizing a call identification telephone number which is transmitted along with an incoming call. A user of the call processor of the invention can program a list of anticipated or preferred call identification telephone numbers, together with destinations to which it is desired to route the respective incoming calls. During an incoming call, the call processor matches the associated call identification telephone number with a preprogrammed number and thereby completes the call according to the programmed destination.

This is a continuation application of application Ser. No. 07/217,179,filed on Jul. 11, 1988, by Sanford J. Morganstein for AUTOMATED CALLSCREENING, now U.S. Pat. No. 5,029,196, issued Jul. 2, 1991, which is arelated application of Ser. No. 07/217,426, filed on Jul. 11, 1988, bySanford J. Morganstein and entitled PERSONALIZED AUTOMATIC CALL ROUTINGnow U.S. Pat. No. 5,027,384.

BACKGROUND OF THE INVENTION

New telecommunication features and options continue to be developed forfacilitating voice communications, both as to expediting thecommunications as well as improving and increasing the amount ofinformation passed between parties. As to the latter mentionedcapability, major telephone operating companies currently providefacilities for forwarding the calling party's telephone number to thedestination to thereby apprise the called party of the originatingtelephone number. The operational parameters of such a service aredescribed in the technical advisory entitled, "Calling Number Delivery",Bell Communications Research, TA-TSY-000031, November, 1984. Thiscapability is made possible by the provision of a small digital visualdisplay or readout incorporated into the called party's telephone set.Electronic switching systems can easily identify a party placing a call,and the telephone directory number assigned to the calling party. Duringthe ringing stage of an incoming call to a destination telephone set,the readout indicates the telephone number of the calling party, therebygiving an indication of the identity of the calling party, even beforethe telephone is answered. The party receiving the telephone call canthen respond to the call, knowing the origination of the call and/or theidentity of the calling party.

In other variations of the foregoing, there exist features intelecommunication systems which process incoming calls by firstanswering the call with a recorded message which invites the callingparty to dial the extension number of the desired called party. Afterreceiving the telephone number input by the calling party, the systemprompts the calling party to verbally input his or her name, whichverbal input is recorded by the system. The call is then completed tothe called party by announcing the recorded name or identity of thecalling party. On being apprised of the identity of the calling party,the called party can dispose of the call in one of various manners. Forexample, the called party may key into the system selected digits forcompleting the incoming call, or rejecting the call.

While the foregoing features increase the information communicated inconnection with telephone calls and thereby enhance telecommunications,several inherent shortcomings still exists. For example, in both of thefeatures noted above, the called party is interrupted or confronted withevery telephone call, irrespective of whether he or she desires torespond to such call based upon the known identity of the calling party.In addition, new telephone sets are required for those situations whenthe telephone number of the calling party is displayed.

A need therefore exists for further enhancements in telecommunicationcall processing for allowing the called party to preprogram thecommunication system so as to provide personalized call routing ofincoming calls. There is a further need for automatically routingtelephone calls to various destinations, such as attendants, voicemessage centers, to the called party, etc., based upon the forwardedidentity of the calling party.

SUMMARY OF THE INVENTION

In accordance with the invention, there is provided a new callprocessing technique which reduces or substantially eliminates theshortcomings and disadvantages of the prior art techniques. According tothe disclosed invention, a communication system is preprogrammable bythe called party to define a list of telephone numbers associated withpotential calling parties. The telephone user-programmer can alsoassociate with each telephone number in the list an indication of theintended disposition of the incoming call.

In the preferred form of the invention, the telephone user-programmercan designate one or more of the listed telephone numbers as important,and associate the same so that such incoming calls can be connecteddirectly to the user. The user can also preprogram the call processorwith a voice recording concerning a voice message which is retrievableby cross-referencing to the call identification number. When the user'stelephone is rung in response to an incoming call which is sodesignated, the user is verbally notified by the preprogrammed voicemessage as to the identity of the calling party.

The user-programmer may designate other listed telephone numbers as lessimportant, and preprogram the same for connection to voice store andforward facilities. In this event, the user would not directly receivesuch incoming calls, but rather would later retrieve any voice messageleft by the calling party by accessing the voice store and forwardfacilities.

Other listed telephone numbers can be designated as being ofintermediate significance, and routed to an alternate destination, suchas a secretary or a switchboard attendant. In response to such incomingcalls, the call would be routed directly to the secretary, theswitchboard attendant or other alternate preprogrammed destination fordisposition thereof.

Incoming calls, the identity of which have no appearance in thepreprogrammed telephone list, can also be programmed by the user fordirect connection to the user-programmer and for announcement of thegeographical area from which the call originates. In this situation, thecall identification telephone number forwarded along with the incomingcall can be utilized as an index for consulting a geographical table. Asa result, the user's telephone can be rung in response to the incomingcall and a verbal prerecorded message supplied as to the geographicalarea or area code from which the incoming call originates.

BRIEF DESCRIPTION OF THE DRAWINGS

Further features and advantages will become more apparent from thefollowing and more particular description of the preferred embodiment ofthe invention, as illustrated in the accompanying drawings in which likereference characters generally refer to the same parts or functionsthroughout the views, and in which:

FIG. 1 illustrates a communication system in which the invention may beadvantageously practiced;

FIGS. 2a and 2b are program flow charts illustrating the major stepstaken by a telephone user in programming the communication system toprovide the features and advantages of the invention;

FIG. 3 is an exemplary look-up table resident in the call processor ofthe invention for indexing call identification numbers to call routes,as programmed by a telephone user of the call processor; and

FIGS. 4a and 4b illustrate the call processing actions taken by thecommunication system in routing an incoming call according to anexemplary preprogrammed call routing sequence.

DETAILED DESCRIPTION OF THE INVENTION

FIG. 1 illustrates an exemplary environment in which the presentinvention may be advantageously practiced. Particularly, there is showna call processor 10 which functions to complete telephone calls directedfrom a local central office 12 to a telecommunication switching system14. The switching system 14 is depicted as a private branch exchange(PBX) type of on-premises switching equipment; however, other switchingsystems such as key telephone systems, ACDs, etc., may be employed aswell. Indeed, those skilled in the art may find that the call processor10 can be adapted to function in cooperation with the on-premisesswitching system 14 without direct connection to the central office 12,and may even integrate the call processor functions within theon-premises switching system 14.

While FIG. 1 illustrates the call processor 10 operating in conjunctionwith an on-premises switching system 14, the principles and concepts ofthe call processor 10 may also be integrated within the central officeswitching system 12. The depicted local central office 12 is of the typewhich itself services a number of telephone sets 16 and 18.

With particular reference now to FIG. 1, the call processor 10 is shownconnected on inputs thereof to the central office 12 by one or moreincoming trunks 20, and connected on outputs thereof to the PBX 14 by acorresponding number of subscriber lines 22. Incoming calls from thecentral office 12 are therefore directed to the PBX 14, via the callprocessor 10 of the invention. Outgoing calls originating from the PBXtelephone sets 24 or 25 are directed to the central office 12, via anumber of outgoing trunks 26. The PBX 14 may be of the unattended type,or be provided with a switchboard attendant 28. The central office 12may be of the type well known in the art for providing telecommunicationservices to subscribers 16 and 18 connected thereto, as well as forswitching telephone calls to other central offices (not shown) by way ofone or more interoffice trunks 30.

The telephone sets 16 and 18 connected by subscriber lines 32 to thecentral office 12 may be of the type having digital readout facilities34 for visually displaying the telephone number identifying the callingparty. As noted above, telecommunication facilities are available fortransmitting, along with an incoming call, the telephone number and areacode identifying the telephone set from which the call originates. Alsoas noted above, when such a telecommunication feature is provided, thedigital display 34 provides a readout of the telephone number associatedwith the calling party when the telephone set 16 is being rung to alertthe called party of an incoming call. Telephone sets 16 and 18 providedwith such a readout 34 are more costly than standard telephones.Heretofore, each party desiring the call identification feature musthave the digital readout capability 34, and thus a new telephone set.

The illustrated on-premises switching system 14 also serves a number oftelephone sets 24 and 25, each of which could be of the type with thedigital readout, noted above. However, the call processor 10 of theinvention which provides many other features and advantages, alsoeliminates the need and the cost for telephone sets having such areadout.

Conventional calls are directed to the PBX 14 by way of the callprocessor 10 in the following manner. In response to an incoming callfrom a local telephone subscriber using telephone sets 16 or 18, or froma more distant calling party (not shown), the central office 12transmits ringing signals on the incoming trunks 20 to a trunk interface36 in the call processor 10. A CPU 38, which is connected to the pluraltrunk interfaces, detects the ringing signals and connects theparticular trunk interface 36, via a switching matrix 40 to an idletwo-wire to four-wire converter 42, commonly known as a hybrid. Once theincoming ringing is detected by the CPU 38, such ringing is tripped bycontrolling the pertinent trunk interface 36 to signal the centraloffice 12 appropriately. Importantly, in response to the tripping ofringing, the CPU 38 establishes a connection from the incoming trunk 20,through the interface 36 and the switching matrix to a callidentification number receiver 39. A path is thus established betweenthe central office 12 and the receiver 39 for the corresponding centraloffice transmission and receipt by the call processor 10 of the callidentification number. Call identification number receivers, and theoperational parameters and formats thereof, suitable for use in thepresent invention are detailed in the technical advisory entitled,"SPCS/Customer Premises Equipment Data Interface", Bell CommunicationsResearch, TA-TSY-000030, November, 1984.

The CPU 38 is then operative to select a greeting message in a digitalannouncement circuit 44 for transmittal through the hybrid 42, theswitching matrix 40, the trunk interface 36, and the central office 12to the calling party. Of course, the CPU 38 also trips the centraloffice ringing so that the calling party can listen to the greetingmessage. In response to the greeting, the calling party is instructed toinput the telephone extension number of the telephone 24 or 25associated with the called party. The input of the extension numberdigits from the caller's DTMF-type telephone set are decoded by a DTMFreceiver 46 and temporarily stored in the CPU 38 in digital form. TheCPU 38 then provides an off-hook condition to one of the subscriberlines 22 connected to the trunk interface 36. The on-premises switchingsystem 14 responds to such off-hook condition by sending a dial tone onthe subscriber line 22, whereupon the CPU 38 outpulses the stored digitsin DTMF form to the on-premises switching system 14. The on-premises PBXswitching system 14 then effects a connection between the subscriberlines 22 and the selected telephone set 24 or 25 of the called party. Inlike manner, the CPU 38 of the call processor 10 provides a cut-throughin the trunk interface 36 between the incoming trunk 20 and thesubscriber lines 22, thereby providing an overall communication pathbetween the calling party and the called telephone set 24 or 25. Thecall processor 10 is described in more detail in U.S. Pat. No.4,696,028, the subject matter of which is incorporated in its entiretyherein by reference.

As noted above, where the call processor is configured for connection tothe switching system only by subscriber lines 22 the incoming calls arerouted directly to the switching system 14 by the incoming or othertypes of trunks 20. With this alternate configuration, the PBX switchingsystem 14 would respond to incoming calls by routing the same to thecall processor. The call processor of the invention then processes suchcalls in the manner described below, and communicates with the PBXswitching system 14 by applying hook-flash signals to the subscriberlines 22. In this manner, the call processor is initially connected tothe central office 12 to receive the call identification number, then tothe calling party to transmit prerecorded voice prompts and receivedigit information concerning which telephone extension 24 or 25 to whichthe caller desires to be connected. The call processor 10 can receivethe telephone extension number from the calling party, outpulse suchextension to the PBX 14 on the subscriber lines 22 and then go on hook.In response to such action, the PBX 14 provides an automatic connectionbetween the calling party and the desired extension 24 or 25.

Briefly summarized, the present invention allows a telephone userassociated with the on-premises switching system 14 to program the callprocessor 10 to direct incoming calls to various destinations, dependingupon the identity of the calling party. Such destinations may comprisethe telephone set 24 or 25 defining the destination originallycontemplated by the calling party, the switchboard attendant 28, analternate destination such as a secretary of the telephone user, or avoice store and forward facility 50. Voice store and forward facilitiesmay be employed, such as the type disclosed in U.S. Pat. No. 3,931,476,by Matthews. Of course, many other destinations or alternate facilitiesmay be employed for routing the incoming calls. Shown also is a digitalrecording facility 52 for storing, in digital form, voice messages inputinto the call processor 10 by the telephone user of the on-premises PBXswitching system 14. The programming of the call processor 10 by theuser thereof is accomplished using a look-up table 54 whichcross-references call identification numbers to destinations.

A telephone user, for example, Mr. Smith, may desire to program the callprocessor 10 such that when a call identification telephone number isforwarded by the central office 12 to the call processor 10, andidentified by the call processor 10 as being of the type which should berouted directly by Mr. Smith, such calls will be forwarded directly toMr. Smith's telephone 24. For other call identification telephonenumbers which can be taken care of by the deposit of a voice message,Mr. Smith can program the call processor 10 to route such incoming callsfor connection to the voice store and forward facility 50. For otherincoming calls from calling parties which can be handled without Mr.Smith's intervention, Mr. Smith can program the call processor 10 toroute such calls to his secretary's telephone. The call processor 10 canbe programmed to redirect yet other designated calls to the switchboardattendant 28.

It should be understood that the user of the on-premises PBX switchingsystem 14 can program the call processor 10 according to the bestdestination which he or she contemplates, in accordance with theidentity of the calling party. However, circumstances can change suchthat, for example, calls previously programmed for routing and handlingby the alternate destination can no longer be efficiently disposed of assuch. One situation may be that a customer has questions which are of anature which cannot be routinely handled by the secretary or the personsituated at the alternate destination. In such event, the call processor10 of the invention is programmable, at will, to provide a new routingscheme for those calls needing the same. There also may be situations inwhich call identification telephone numbers are not available and thusnot forwarded along with incoming calls to the call processor 10. Insuch situations, the call processor 10 can be programmed to handle androute such calls in an appropriate manner.

FIGS. 2a-2b illustrate the software routine for allowing the callprocessor 10 to be programmed by a telephone user to route incomingcalls to desired destinations, based upon call identification telephonenumbers accompanying the incoming calls. In order to initiate theprogramming procedure, the user-programmer must first establish acommunication path to the call processor 10. This can be done by seizingan outgoing trunk 26 and dialing the directory number of the on-premisesPBX switching system 14. The central office 12 will receive the call andswitch the same to the call processor 10 on the incoming trunk 20.User-programmers of the call processor 10 can also remotely program theprocessor by completing a call thereto via the interoffice trunk 30.Also, some of the trunk interfaces 36 may be directly connected as anextension to the PBX 14 so that a user-programmer served by the PBX needonly dial the extension to which the call processor 10 is connected, inorder to gain access to the call processor 10.

With reference first to FIG. 2a, the CPU 38 detects ringing signalsgenerated by the central office 12 and directed to the call processor 10on the incoming trunk 20. This is shown in block 60 of the flow chart.As a result, the CPU 38 connects a call identification telephone numberreceiver 39 through the trunk interface 36 to the incoming trunk 20,thereby decoding and storing the call identification telephone numbertransmitted by the central office 12. Such a receiver 39 may bededicated, as shown, and comprise a DTMF receiver for decoding theidentification number and converting the same into digital form. Inthose situations where the call identification number comprises adigital transmission, a corresponding digital receiver can be connectedto the trunk 20 to receive the digital signals. In either case, the callidentification number receiver 39 is coupled to the CPU 38 for passingthe resulting digital information when interrogated by the CPU 38. Inthe alternative, the DTMF receiver 46 may be utilized to receive thecall identification number, digitize it, and pass it to the CPU 38.General purpose multifrequency (MF) receivers can also be adapted andappropriately enabled to respond and store the call identificationdigits when transmitted subsequent to the initial ringing of the trunk20.

Block 62 of the flow chart depicts the CPU operation for providing thecall identification receiver decoding and storing facilities. If theincoming call is accompanied with a call identification number, theprogram branches to a routine for processing routine incoming callsaccording to the invention. On the other hand, if no call identificationnumber is detected, such as when the processor 10 is being programmed bya local telephone user, control of the system is branched to block 64.Other routines and techniques may be utilized to distinguish betweenconventional incoming calls and programming calls. According to programblock 64, the call processor 10 transmits a voice prompt to give theprogrammer an introductory greeting. Such a voice prompt may be selectedfrom the digital announcement circuit 44. In addition, the voice promptinstructs the programmer to input a code to place the call processor 10in a mode for user programming. If no code or an invalid code is inputby the programmer, as noted in program flow block 66, processingbranches to block 68 where call processing proceeds in accordance withthat described in U.S. Pat. No. 4,696,028. If, on the other hand, thecode input by the programmer signifies a programming mode for developinga personalized directory or list of call identification telephonenumbers and associated call routes, the program branches to block 70.Also as shown, if a code input by the programmer signifies thedevelopment of call routing procedures for call identification telephonenumbers not previously listed by the programmer, the control of the CPU38 is branched to a routine 72, via program block 67, in which theprogrammer then inputs information to determine the routing of suchcalls. The noted programming codes input by the programmer are, ofcourse, different.

Assuming for the purposes of example that the programmer desires todevelop a list of call identification telephone numbers and associatedprogram call routes, the appropriate code is input and control isbranched to block 70. According to block 70, the CPU 38 provides a voiceprompt to the programmer to enter his or her telephone extension number,followed by a call identification number to be placed on the list. Apredefined time interval may be used, or other non-numeric digit may bekeyed in by the programmer to separate the extension number from thecall identification telephone number, thereby allowing the callprocessor 10 to distinguish the end and start of each such digit string.The call identification number is then stored at block 74 in the look-uptable 54. The look-up table 54 may comprise a random access memoryaccessible by the CPU 38 for both storing and retrieving digitalinformation registered therein. While various look-up tables or othercross-referencing functions and apparatus may be utilized, FIG. 3depicts a look-up table 54 for cross-referencing call identificationnumbers with call route destinations. The look-up table 54 such as shownmay be utilized for each user of the call processor 10 desiring to routecalls according to the identity or geographical location of the callingparty. The table 54 includes a number of entries, such as 80, eachhaving a call identification telephone number location 82cross-referenced to a call route destination location 84. Of course, thedata entered into the table 54 by the programmer would be by the CPU 38to binary form, rather than the form depicted.

The destination entry 84 may be any type of binary string which isunique for carrying out a call processing function to connect thecalling party directly to the called party, as shown by the entry in thedestination location 84 of the first programming table entry 80. Aprogrammable tag bit field location 86 may be utilized to indicatewhether or not the called party is to be verbally informed of theidentity of the calling party. If so, the CPU 38 retrieves acorresponding message from the digital recording facility 52 indicatingthe telephone number or other identity of the calling party. The tag bitfield 86 may be characterized by plural bit locations, and contains theaddress of the particular prerecorded message which is found in thedigital announcement circuit 44.

The table 54 is typically programmed to register all the callidentification numbers and associated call route destinations desired bythe programmer. Table entry 88 indicates that an incoming call having acall identification number of (202) 432-8511 is to be connected to theprogrammer's personal message mailbox of the voice store and forwardfacility 50. Table entry 90 is shown programmed to connect an incomingcall having a call identification number of (214) 220-8287 to thealternate destination assigned to telephone extension 222. Provisionsmay also be made in the call identification number location 82 part ofthe table 54 to indicate that whole blocks or portions of a block ofnumbers are all to be routed to a specific destination. For example, thecall identification number location 82 can be programmed to enter 312xxx-xxxx so that all calls coming from area code 312 are to be routed tothe same destination designated in the corresponding call routedestination location 84 portion of the table entry. The exemplary callroute destination location 84 of table entry 80 signifies that theincoming call associated with the noted call identification number is tobe connected directly to the user-programmer's telephone set 24 or 25.

Referring again to FIG. 2a, and according to program flow block 92, avoice prompt is caused to be transmitted by the CPU 38 to the programmerto input a security code employed to confirm that the programmer isauthorized to program the call processor 10. Such an authorization canbe initially programmed in the call processor 10 by forming a list ofall authorization security codes which are required for each user forprogramming the call routing feature of the invention. For example, itmay be desirable to prohibit certain users of the on-premises PBXswitching system 14 from utilizing the features of the presentinvention. In order to verify whether there exists such anauthorization, the CPU 38 compares at block 94 the authorizationsecurity code input by the programmer with that stored in a look-uptable (not shown). Upon confirmation thereof, the call processor 10continues with the programming. If there is no correspondence foundbetween the authorization security code input and one found in theauthorization look-up table, program control branches to block 96 wherethe programmer is disconnected.

On the finding of a valid authorization security code, the processor CPU38 branches to decision block 97 where the determination is made whetheror not the number to be programmed is an individual number. If thefinding is in the negative, then the number must be an unlisted number,whereupon the program branches to the noted program routine 72. Such aroutine is described below. It should be noted that when the programcontrol branches in the noted manner from block 67, the table 54 willnot be consulted. Rather, the extension number of the programmer issimply stored and then security code validation is checked.

For individual numbers, the processing continues with block 98 where itis determined whether the call identification telephone number input bythe programmer already has an appearance on the list of table 54. If thedecision is in the affirmative, the CPU 38 issues a voice prompt to theprogrammer to dial "1" to delete this number from the callidentification telephone number list, as shown in block 100. Programflow then proceeds to block 102, as it otherwise would have if anegative determination were made in block 98, to provide yet otherinstructional voice prompts to the programmer. The additional voiceprompts may be in the nature of the following. "Dial 2 to directincoming calls to another number. Dial 3 to route incoming calls to thevoice message facility. Dial 4 to announce the identity of the callingparty and ring your extension telephone number. Dial 5 to ring yourextension telephone without announcing the call." It can be appreciatedthat such an instructional prompt can be expanded to cover other callroute destinations.

According to program flow block 104, the CPU 38 branches to theappropriate routine, depending upon the digit input by the programmer.If, for example, the programmer entered the digit "1", program controlwould branch to block 106 where the call identification telephone numberis deleted from the list. This is shown in FIG. 2b. From block 106, theCPU 38 executes the instructions associated with block 108 by advisingthe programmer with a tone acknowledgement that the delete operation wassuccessful. Such a tone may be any one of a variety of audible tonesdesignated for such an acknowledgment indication. After deleting thecall identification telephone number from the list, the programmer isdisconnected at block 110.

If the digit "2" was input by the programmer, a further voice promptwould be transmitted to the programmer at block 112 advising theentering of a telephone extension number, or other seven-digit directorynumber which defines the alternate designation to which calls are to berouted. The DTMF digits are entered by the programmer and stored atblock 114 in the look-up table 54 in association with the callidentification number programmed for that table entry. The successfulstoring of the alternate designation digits is confirmed by the returnof the tone acknowledgment, as indicated in block 108.

The input of the digit "3" by the programmer signifies that an incomingcall accompanied with a call identification telephone number is to betransferred to the voice messaging facility 50, as noted by programblock 116. The particular voice mailbox of the store and forwardfacility 50 is accessed utilizing the extension number input by theprogrammer in response to the voice prompt of program flow block 70.Access to voice store and forward facilities by call processors, such asdescribed above, is described in more detail in co-pending U.S.application entitled "Integration of Voice Store and Forward Facility"filed Apr. 17, 1987, Ser. No. 40,564. The disclosure thereof isincorporated herein in its entirety by reference thereto. Theprogramming of this option is shown by block 116, which is terminated bythe tone acknowledgement 108.

As an additional option to the programmer of the call processing system10, the input of the digit "4" causes the processor to perform thefunction illustrated in block 118. According to this feature, a voiceprompt is dispatched to the programmer instructing the verbal input ofthe name or identity which should be announced to the telephone user ofthe on-premises PBX switching system 14 in response to certain incomingcalls. Such a verbal input may be in the nature of "Alex Jones fromChicago is calling." Thus, when Alex Jones places a telephone call toMr. Smith, the call identification telephone number of Alex Jones willbe forwarded from Chicago to the call processor 10. When Mr. Smith'stelephone set 24 is rung in response to the incoming call, Mr. Smith canpick up the handset, in which event the verbal input message will beretrieved from the recording facility 52 and repeated, indicating thatMr. Alex Jones from Chicago is calling. The voice message inputaccording to program flow block 118 is digitized and stored in thedigital recording facility 52, as noted in block 120. Program flow isdirected to block 108 where the tone acknowledgment is returned to theprogrammer, signifying the successful accomplishment of programming thenoted feature.

According to the last of the exemplary programmable routing options, theinput of the digit "5" by the programmer causes the CPU 38 to branch toblock 122. The function associated with this block is that the CPU 38stores the digit information corresponding to the call identificationtelephone number, as well as the programmer's extension telephone numberinput according to the voice prompt of block 70. As with the other notedoptional call routes, program flow is then branched back to block 108for tone acknowledgment.

The final destination programmable in accordance with the precedingexample can be reached as a result of the call processor routing fromblock 72 (FIG. 2a) to program flow block 124 (FIG. 2b). According tothis programmed routing of the incoming call, a voice prompt istransmitted to the programmer, indicating options for completing thecall. First, a transmitted voice prompt may be in the nature, "Dial 1 ifyou want calling parties not listed to be unannounced, or, dial 2 ifcalls from telephone numbers not listed are to be announced with yourprerecorded phrase based upon an area code and/or an exchange code." Thecalled party can then select such option by dialing the digit "1" or"2", whereupon program control is transferred respectively either toblock 108 or to block 126. The input of a digit "1" causes the callprocessor to transfer to block 108 where call processing continues asdescribed above in connection with such block. If the digit "2" is inputby the user-programmer, the call processor 10 prompts the caller toinput the area code and/or the exchange code information, as depicted inblock 126. The information input is then received and stored at block127 in the look-up table 54. Processor control then branches to flowblock 128, in which event the user-programmer is prompted a second timeto enter the voice message concerning the geographical region. Thismessage is utilized later as a prerecorded message to be played inresponse to telephone calls to the user's telephone, which callsoriginate from the particular geographical region. The processor 10digitizes and stores the programmer's voice input concerning thegeographical location in the digital announcement circuit 44. Theaddress of the announcement associated with the geographical location isalso stored at this time in the tag bit field 86 of the programmed entryof the look-up table 54. This is illustrated by block 129. From block129, the program branches to block 108 where an acknowledgment tone istransmitted to signify the successful programming of this call route.

The foregoing sets forth the major functions carried out by the CPU 38of the call processor 10 in being programmed for carrying out thevarious operations in routing incoming telephone calls based upon callidentification telephone numbers received with such calls. Afterprogramming the call processor 10 in the noted manner, incoming callsare routed according to the manner programmed by the telephone user.While not shown in block 62, incoming telephone calls not accompanied bycall identification telephone numbers are detected as such, andprocessed according to conventional routines for connection to thedesired called party.

FIGS. 4a and 4b illustrate an exemplary call routine for processingincoming calls having associated call identification telephone numbers.Entry to program flow block 128' (FIG. 4a) is from block 62 (FIG. 2a),after decoding the call identification number. According to block 128, avoice prompt is transmitted to the calling party with an introductorygreeting concerning the business entity reached and instructions toinput the telephone extension of the called party with whomcommunications are desired. The receipt of the extension number istested 130, and on a negative determination thereof, program control isbranched to block 132 where the call is tagged for connection to a callcompletion assistant, such as the switchboard attendant 28. The resultof the instructions performed pursuant to either block 130 or 132 resultin the carrying out of the instructions of block 134. Here, the callprocessor 10 consults the call identification look-up table 54 todetermine the proper call route to be taken, as programmed by theprogrammer and telephone set user of the on-premises switching system14. As noted above, the call identification look-up table 54 may includea sequential list of telephone numbers of potential callers, eachcross-referenced to a symbol or instruction which denotes a routing forcontrolling the call processor 10 to connect the respective incomingcalls to destinations prescribed by the called party. As noted, manytypes of look-up tables may be employed by those skilled in the art andreadily implemented for use with the instant invention.

After the call identification number has been cross-referenced in thelook-up table 54 for finding the particular call route function, suchfunction is carried out, as noted in program flow block 136. If, afterconsulting the call identification list, the call identificationtelephone number is not found (block 138), call processing proceeds toblock 140 where it is determined whether or not the programmer hasprogrammed the call processor 10 to announce the geographical locationof such call. On a negative determination, the call is completed to thecalled party, as noted by block 142. After completing the call, the callprocessor 10 proceeds with other routine functions in monitoring theprocessor inputs to detect new calls, to signal the on-premisesswitching system 14, etc.

Returning to block 140, if the programmer has programmed the callprocessor 10 to announce the geographical location of the unlisted callidentification telephone number, program flow is branched to block 144where the telephone set of the called party is rung, and an answer isdetected. According to block 146, the call processor 10 then selectsfrom the digital recording facility 52 a prerecorded phrase which isassociated with the area code and the exchange code of the callingparty, as referenced by the call identification telephone number. Thedigital recording facilities 52 can be provided with a listing of allnational and international area codes, each of which is cross-referencedwith a particular geographical area, such as a state, territory,province, etc. In this manner, when the area code portion of the callidentification telephone number is decoded, it can be cross-referencedin such listing to determine the geographical area from which theincoming call originated. For local call identification numbers whichmay not include an area code portion, the absence thereof can beutilized to signify the local area code. Indeed, a local area code canbe inserted into the call identification number and utilized in the listto define the local geographical area for providing the phrase accordingto block 146. Indeed, the voice message transmitted according to block146 may include the verbal phrase of the area code itself and thegeographical area, such as "Area code 312, Illinois". After transmissionof the geographical information, the call is completed to thesubscriber, as noted in block 142. In this manner, the called party ismade aware of the general origin of the call. This is especiallyimportant in a business, such as in a sales organization, where numerouslong distance telephone calls and communications are conducted everyday.

With reference back to program flow block 136, in the event the callidentification telephone number associated with the exemplary incomingcall has been programmed for routing to an alternate destination,program flow branches to block 148 of FIG. 4b. Here, the call iscompleted directly to the alternate destination, as programmed by thetelephone user associated with the on-premises switching system 14. Asnoted above, the alternate destination may be preprogrammed for routingto a secretary, the switchboard attendant, a colleague, etc. The call iscompleted in this call route sequence by outpulsing the telephone orextension number of the alternate destination to the PBX 14 on an idlesubscriber line 22.

Incoming calls preprogrammed to be connected to a voice messagingfacility take a route determined by program flow routine 150. The stepsnecessary to effect such a connection are described in detail in thenoted co-pending application, "Integration of Voice Store and ForwardFacility." During the accessing and connection to the voice store andfoward facility 50, the call processor arranges a voice message usingthe call identification number for recording with the facility 50, priorto the recording of the calling party's message. The composite processorarranged message may be in the nature of "Your calling party's telephonenumber is 312-519-9850". The message is received and recorded by thefacility 50 prior to the verbal message deposited by the calling party.In this manner, the called party is made aware of the identity of thecalling party in the event the calling party failed to verbalize his orher telephone number. This feature is shown as block 151 in FIG. 4b.

The processor-generated message can be formed by utilizing a standardpredigitized phrase "Your calling party's telephone number is . . .",and storing the same in the digital announcement circuit 44. Thepredigitized verbal message is arranged as a phrase and connected withthe individual verbalized numbers corresponding to the callidentification digits. The composite verbal phrase is transmitted to thevoice messaging facility in analog form for recording, prior to theconnection thereto and deposit of the calling party's voice message.Such processor action is shown as block 152. In any event, when thecalling party is connected to such a messaging facility 50, a voicemessage can be deposited by the calling party for later retrieval by thecalled party.

In the event the incoming call is of the type designated by theprogrammer of the call processor system 10 for direct connection to thedialed destination, program flow is directed to block 153. The functionscarried out according to block 153 include the ringing of the user'stelephone number and the detection of an answer, such as an off-hookcondition. Next, and as noted by block 154, the message prerecorded inconnection with the programming block 120 (FIG. 2b) is recalled from therecording facility 52 and transmitted to the called party. As describedabove, such message identifies the calling party, preferably by nameand/or geographical area, thereby informing the called party of the bestidentity of the calling party. After transmission of the identificationmessage, the routing of the incoming call is completed by connection tothe called party, as noted by block 142.

From the foregoing, disclosed is apparatus and a method for programminga call processor to route incoming calls according to the identity ofthe calling party. The technical advantage of such a feature is thatcalls can be automatically routed to predetermined destinations, withoutsubstantial intervention by the intended called party. Indeed, thetelephone user or programmer of the call processor can preselectdestinations for various calling parties to optimize the user's time andefficiency. An additional technical advantage realized by the presentinvention is that the user of the call processor can update or modifythe call routing destination as the needs change. Yet another technicaladvantage of the invention is that the called party can be apprised ofthe identity of the incoming calling party without requiring a differenttype of telephone set and its accompanying reoccurring expenses.

While the preferred embodiment of the invention has been described withreference to a specific call processor system and method, it is to beunderstood that many changes in detail may be made as a matter ofengineering choices without departing from the spirit and scope of theinvention, as defined by the appended claims.

What is claimed is:
 1. A method for controlling routing of a telephonecall, comprising the steps of:programming a route directory with atleast one potential calling party identity to be associated with one ofa plurality of destinations including an intended called party and avoice messaging facility; receiving an incoming telephone call directedto a switching system and receiving an identity of a calling partyplacing the incoming call; accessing the route directory in response tothe incoming call to determine the destination route of the incomingcall based upon the identity of the calling party; and in response tosaid step of determining the destination route, connecting the incomingcall to the voice messaging facility.
 2. A method of limited accesscontrolled routing of a telephone call, comprising the stepsof:providing a programming mode in a call processor for allowing anauthorized programming user to whom a call can be directed to programthe call processor to control the routing of incoming calls directed tosaid authorized user, comprising the substeps of:storing at least oneauthorization security code in a look-up table; prompting a programminguser to input a code; comparing said code input by said programming userwith said authorization codes in said look-up table; responsive to saidstep of comparing, when said code input by said programming usercorresponds to a said authorization code in said look-up table,authorizing said programming user to program said call processor; andproviding a program within said call processor for allowing saidauthorized programming user to enter calling party identifying indiciaand a call route destination associated with each said identifyingindicia, the call route destination selected from a plurality ofdestinations including said programming user and a voice messagingfacility.
 3. The method of claim 2, and further comprising the substepof disconnecting said programming user when said code input by saidcorresponding user and said authorization security code do notcorrespond.
 4. A call processor for controlling routing of a telephonecall, comprising:a receiver adapted to receive a call identificationnumber identifying a calling party, said identification number beingreceived in a format selected from a group including digital and DTMFformats; a memory for storing the call identification number; a look-uptable programmable by a user of the call processor for listing indiciafor identifying calling parties and for cross-referencing a destinationto said indicia, said destination selected from a plurality ofdestinations including the user and a voice messaging facility; acomparator for comparing a call identification number received inassociation with an incoming call to said call processor with entries insaid look-up table; and call route directing apparatus for connectingthe incoming call to the destination cross-referenced in said look-uptable on an affirmative comparison of the call identification number viasaid calling party identifying indicia.
 5. The call processor of claim4, wherein said receiver is operable to digitize a respective saididentification number when received in DTMF format.
 6. The callprocessor of claim 4, wherein said receiver comprises:a first receiverunit for receiving call identification numbers in digital format; and asecond receiver unit for receiving call identification numbers in DTMFformat.
 7. The call processor of claim 6, wherein said second receiverunit is adapted to digitize said call identification numbers received inDTMF format.
 8. The call processor of claim 7, wherein said secondreceiver unit includes a general purpose multifrequency receiver.